home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 2002 November / SGI Freeware 2002 November - Disc 3.iso / dist / fw_mc.idb / usr / freeware / lib32 / mc / extfs / uha.z / uha
Text File  |  2002-07-08  |  966b  |  44 lines

  1. #!/bin/sh
  2. #
  3. # It is the uhafs Valery Kornienkov vlk@st.simbirsk.su 2:5051/30@fidonet
  4. # ver 0.1 Thu Apr  6 12:05:08 2000
  5.  
  6. HA=ha # for HA 0.999 Copyright (c) 1995 Harri Hirvola
  7.       # Source: ftp://sunsite.unc.edu/pub/Linux/compress/ha0999p-linux.tar.gz
  8.  
  9. mchafs_list ()
  10. {
  11.  eval $HA lf $1 2>/dev/null |nawk -v uid=${UID-0} '
  12. { date="JanFebMarAprMayJunJulAugSepOctNovDec" }
  13. /^===========/ {next}
  14. {
  15.  if ($5="%" && $8~/DIR|ASC|HSC|CPY/) {
  16.    split($6, a, "-")
  17.    split($7, t, ":")
  18.    filename=$1
  19.    filesize=$2
  20.    getline
  21.    if ($2=="(none)") $2=""
  22.    path=$2
  23.    getline
  24.    if ($1~/^d.*/) next
  25.    printf "%s %s %-8d %-8d %8d %3s %2d %4d %s:%s %s%s \n",\
  26.    $1,1,0,0,filesize, substr(date,(a[2]-1)*3+1,3),a[3],a[1],t[1],t[2],\
  27.    path,filename
  28.   }
  29. }' 2>/dev/null
  30. }
  31.  
  32. mchafs_copyout ()
  33. {
  34.     cd /tmp
  35.     eval $HA xy $1 $2 >/dev/null 2>&1
  36.     mv -f $2 $3
  37. }
  38.  
  39. case "$1" in
  40.   list) shift; mchafs_list $1; exit 0;;
  41.   copyout) shift; mchafs_copyout $1 $2 $3; exit 0;;
  42. esac
  43. exit 1
  44.